iT邦幫忙

2023 iThome 鐵人賽

DAY 20
0

挑戰賽終於寫到第二十天了....加油加油,或許自己分享的零散,
但我的確就是把自己所看到的所學的,再透過自己初步的理解,分享出來給大家,有時候太過艱深的文章實在啃不下去,這時候有簡單介紹,理解過後再去看比較困難的文章,我覺得是比較符合我的XD

希望也能幫助到跟我一樣學習模式的人

我們很常可能要被動執行一個任務。這樣還是相對抽象,我們來舉個例子
ex:
當有會員註冊時,自動發註冊信件mail給對方
當商品出貨時候,自動發出貨通知。
當有特定主題出現新文章的時候通知特定人事。

基本上他就是一個比較被動接受到某個任務有被觸發,接著去通知對應的程式去通知有在條件內的使用者。

希望這樣的解釋有幫助到你一起了解這個東西。

上圖一個最基本的範例

透過 addListener 可以增加新的事件

如果都是同一個事件的話觸發順序則是

emit第二個參數可以傳遞給註冊事件

也可以在.on第二個參數直接放入要執行的匿名函數

事件觸發本身是同步的,但也可以在裡面塞入異步操作

可以透過.off關閉某個註冊事件

使用prependListener 可以在其他事件觸發之前先行觸發

如果想知道某個值到底有幾個聯繫可以使用listenerCount

這些例子希望能幫助你初步了解觀察者模式~

參考資料
一文聊聊Node.js中的EventEmitter模組


上一篇
第十九天 Event Loop初步認識
下一篇
第二十一天 ...到底在.什麼的展開運算符
系列文
Node.js隨手札記 想到什麼就說什麼的30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言